#!/bin/sh

#test ricostruzione periodica
./permserver perm2.dat &
./passaggi 42 1000000 10 | ./ztl multe.log 

sort multe.log > multe1.log


if ! diff multe1.log multe1.sort.check ; then
    echo Errore generazione multe 1
    exit 1
fi

# gestioto EOF su socket correttamente ?
killall -PIPE permserver 
# il processo server e' ancora attivo ?
if ! ps aux | grep -v grep | grep  "./permserver"; then
    exit 1
fi
echo "Server attivo."

# modifica file permessi
cp perm3.dat perm2.dat
# do tempo al refresh thread
sleep 10

# refresh permessi corretto ?
./passaggi 42 100 10 | ./ztl multe.log 

sort multe.log > multe2.log

if ! diff multe2.log multe4.sort.check ; then
    echo Errore generazione multe 2
    exit 1
fi

sleep 2
# test gestion SIGTERM
if ! killall -w permserver ; then
    echo Server non attivo.
    exit 1
fi

if ls tmp/permsock ; then
    echo Socket presente.
    exit 1
fi
echo "... so far so good!"

#generazione multe con lo script
if ! [ -d multe1 ] ; then
    mkdir multe1
fi

if ! [ -d multe2 ] ; then
    mkdir multe2
fi

./mailscript multe1.log anagrafe.txt multe1
./mailscript multe2.log anagrafe.txt multe2

#confronto multe generate
dirs="multe1 multe2"
for d in $dirs; do
    lista=$(ls $d)
    for i in $lista; do
# elimina la data
	grep -v Pisa FINALDATA/$d/$i > .a
	grep -v Pisa $d/$i > .b
	diff .a .b
	rm .a .b
    done
done

exit 0
